package dynamic;

/***
 * @Author: Cjj
 *Java动态代理
 * 1.为什么需要代理？
 *  代理可以无侵入式的给对象增强其他的功能
 *  调用者-代理-对象
 * 2.代理长什么样?
 *   代理里面就是对象要被代理的方法
 * 3.Java通过什么来保证代理的样子?
 *  通过接口保证,后面的对象和代理需要实现同一个接口,接口中就是被代理的所有方法
 */
public class BigStar implements Star{
    private String name;

    public BigStar(String name) {
        this.name = name;
    }

    //唱歌
    public String sing(String name){
        System.out.println(this.name+"正在唱歌"+name);
        return "谢谢";
    }



    //跳舞
    public void dance(){
        System.out.println(this.name+"正在跳舞");
    }
    public BigStar() {

    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}
